Jump To:
Technical Q&As
Carbon is a set of APIs that enables C and C++ developers to take advantage of Mac OS X-specific features, including an advanced user interface tool kit, an efficient event-handling mechanism, the Quartz 2D graphics library, and multiprocessing support. In addition, other industry-standard C and C++ APIs are easily available to Carbon developers, providing access to such services as the OpenGL drawing system, the Mach microkernel, and BSD operating-system services. Because Carbon is a collection of C programming interfaces, developers can use virtually any Macintosh C development environment that supports PowerPC to build Carbon applications.

Carbon Resources
A guided introduction and learning path for developers new to Carbon.   Essential information for developers using procedural C.   Descriptions of procedural C programming interface elements.
Document Descriptions
On Off
Display

Sort by
Title
Sort by
Topic
Sorted by
Date
Selecting a specific sound input source (HTML) ()
Deprecated - SND10: Using the sound input driver to select specific sound input sources.
Music & Audio 1998-01-16
siOSTypeInputAvailable Format (HTML) ()
Deprecated - SND09: The format of the data returned by the siOSTypeInputAvailable selector is SoundInfoList.
Music & Audio 1998-01-16
Creating Gray Scaled Images > 8 bits (HTML) ()
Deprecated - QD51: Shows how to create gray-scaled images at resolutions greater than 8 bits for display.
Graphics & Imaging, User Experience 1997-11-17
Receiving UDP Broadcasts (HTML) ()
Deprecated - NW53: Explains why UDP endpoints may never receive UDP broadcast messages.
Networking 1997-11-17
Translating Postscript font file names (HTML) ()
TX09: Describes how to translate a font name to a Postscript font file name.
Text & Fonts 1997-11-17
OTScheduleDeferredTask When Task Running (HTML) ()
NW52: Describes what happens when you use OTScheduleDefferedTask to schedule a task that is running.
Design Guidelines, Events & Other Input, Networking, Performance, Process Management, Resource Management, Runtime Architecture, Tools 1997-10-13
Deselecting Icons in the Finder (HTML) ()
IC04: Shows how to programmatically deselect icons in the Finder.
Interapplication Communication 1997-07-11
How to use the OT modem script engine (HTML) ()
Deprecated - NW50: Shows how to use the Open Transport modem script engine.
Networking 1997-07-11
68K Open Transport Code on Power Macintoshes (HTML)
Deprecated - NW48: Explains why running Open Transport 68K code on a PowerPC may not always work.
Networking 1997-03-14
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Networking, Performance 1997-03-14
Animating the Cursor at VBL Time (HTML) ()
PS05: Describes animating the cursor under traditional Mac OS.
Process Management 1997-01-09
Multiple Resources with the Same Type and ID (HTML) ()
TB30: Explains why Resource IDs should be unique within a given resource type within a given resource file.
Human Interface Toolbox 1996-11-27
T_DATA_REQ vs M_DATA TPI Message Blocks (HTML) ()
NW42: Explains why OT passes data to a TPI module using M_DATA message blocks instead of M_PROTO+T_DATA_REQ.
Networking 1996-10-25
Server Endpoint 'qlen' Limit (HTML) ()
Deprecated - NW38: Tells how to determine the maximum 'qlen' value which limits the number of supported handoff endpoints.
Networking 1996-08-21
Calling CloseOpenTransport When Writing an App (HTML) ()
Deprecated - NW36: Identifies a bug in Open Transport 1.1 which means your application must CloseOpenTransport before quitting.
Networking 1996-07-03
OTScheduleSystemTask Cleanup (HTML) ()
Deprecated - NW37: States the proper way to clean up any pending system tasks scheduled with OTScheduleSystemTask.
Networking 1996-07-03
Making Input Gain Setting Changes (HTML) ()
Deprecated - SND01: Changing the input gain setting on older Power Macs before recording.
Music & Audio 1996-06-01
siActive Channels Unsupported on Some Power Macs (HTML) ()
Deprecated - SND03: siActive Channels is unsupported on some older PowerMacs (siUnknownInfoType returned by SPBGetDeviceInfo).
Music & Audio 1996-06-01
Aborting a OTConnect in Progress (HTML)
Deprecated - NW29: Describes the proper way to abort OTConnect, and why after calling OTSndDisconnect you may receive "kOTOutStateErr".
Networking 1996-05-14
How PBDTGetAPPL Chooses Which Copy of an App to Launch (HTML) ()
Deprecated - TB19: Explains how PBDTGetAppl() chooses which application copy to launch, and how to deal with the trash.
Human Interface Toolbox 1996-05-14
Locking an Area Using PBLockRange (HTML) ()
OPS09: Describes the behavior of PBLockRange.
File Management 1996-05-14
Synchronous TCP OTConnect Client Call Completes Before Server Responds (HTML) ()
Deprecated - NW24: Explains why an OTConnect call will complete before the server responds.
Networking 1996-05-14
TCP Option Sizes (HTML)
Deprecated - NW27: Tells where to get more information on TCP Option sizes and setting TCP Options.
Networking 1996-05-14
Error -3168 (kOTStateChangeErr) and Handoff Endpoints (HTML) ()
Deprecated - NW22: Explains why a kOTStateChangeErr -3168 occurs when there is a handoff endpoint involved.
Networking 1996-04-08
Closing the Connection: OpenTransport (HTML) ()
Deprecated - NW20: Describes an orderly disconnect situation in Open Transport between two nodes.
Networking 1996-03-04
Open Transport Error -3208: kEBADFErr (HTML) ()
NW21: Explains why a call to OTSnd may result in a kEBADFErr -3208.
Networking 1996-03-04
Locating a Font's Home File (HTML) ()
Deprecated - TB18: Lists the steps necessary to find the home file of a given font.
Text & Fonts 1996-02-15
Converting Simplified Chinese (HTML) ()
TX06: Describes how to convert Macintosh Simplified Chinese encoding into GB2312.
Text & Fonts 1996-02-09
Using qd and QDGlobals (HTML) ()
Deprecated - QD40: Why a sample program compiled with SC may give the link error: undefined entry qd. Provides a solution.
Graphics & Imaging, User Experience 1996-02-09
Using Temporary Memory with OpenPicture (HTML)
Deprecated - QD20: Provides several techniques of causing OpenPicture to allocate temporary memory for a picture handle.
Games, Graphics & Imaging, Performance, User Experience 1996-02-01
Converting RGB Colors to a Palette Index (HTML)
Deprecated - QD21: Explains how to convert RGB colors into the palette index created by an application.
Graphics & Imaging 1995-09-15
Error -151 and NewGWorld (HTML)
Deprecated - QD18: Explains what the error code -151 means when in NewGWorld.
Graphics & Imaging, Performance, User Experience 1995-09-15
Incorrect Inside Macintosh Volume V documentation (HTML)
Deprecated - QD15: Identifies incorrect documentation in Inside Macintosh Volume V regarding the formats of PnPixPat and BkPixPat opcodes.
Games, Graphics & Imaging, QuickTime 1995-09-15
Problem Getting PICTS to Display in Correct Colors (HTML)
Deprecated - QD24: Using a custom color table to get PICTs to display with the right colors in an offscreen GWorld.
Graphics & Imaging 1995-09-15
Problem with PaintRgn on 256-color Screens (HTML)
Deprecated - QD23: PaintRgn with RGBForeColor and transfer mode addOver doesn't return color to original on 256-color-screens.
Graphics & Imaging, Performance, User Experience 1995-09-15
Problems Creating a Mask for a Picture (HTML)
Deprecated - QD27: Demonstrates creating a mask where the mask is 0 for pure white pixels and 1 everywhere else.
Graphics & Imaging 1995-09-15
Spooling in or out of CompressPicture or CompressImage (HTML)
Deprecated - QD17: Recommends alternatives to spooling the results of CompressPicture or CompressImage to or from disk.
Graphics & Imaging 1995-09-15
Window Manager and EraseRect (HTML)
Deprecated - QD26: Why WindowManager causes a flicker using EraseRect and provides a solution for this problem.
Graphics & Imaging, User Experience 1995-09-15
Using the Wide Routines in <FixMath.h> (HTML)
TB14: Details the Wide routines listed in the FixMath.h header (WideDivide, WideCompare, WideBitShift, WideShift, etc.).
Human Interface Toolbox 1995-06-01